The present invention relates generally to the field of cache coherence, and more specifically to enabling directory-based coherence using a transitory table.
Cache coherence refers to the uniformity of shared resource data that ends up stored in multiple local caches. Incoherent data can result from clients in a system maintaining caches of a common memory resource. Cache coherence mechanisms manage such conflicts by maintaining a coherent view of data values in multiple caches to identify scenarios where they may not match. Directory-based coherence is a particular mechanism for handling cache coherence issues. Directory-based coherence uses a special directory to serve coherence instead of using a shared bus. The special directory facilitates communication between multiple nodes to assure that coherence protocol is working correctly along all communicating nodes. In directory based cache coherence, the directory keeps track of the status for all cache blocks, where the status of a block includes a cache coherent state as well as an indication of which nodes share said block.